package com.example.play.state

import com.example.common.entity.CommendEntity
import com.example.common.entity.DanmuEntity
import com.example.common.entity.MovieVideoEntity
import com.example.common.entity.SimpleVideoEntity
import com.example.common.state.BaseUIState
import com.example.play.entity.AuthorEntity

sealed class PlayUiState :BaseUIState(){

    //获取视频作者信息
    data class LoadAuthorByIdSuccess(val list: AuthorEntity):PlayUiState()
    data class LoadAuthorByIdFail(val msg:String):PlayUiState()

   //获取首页推荐视频
    data class LoadRecommendSimpleVideoSuccess(val list: List<SimpleVideoEntity>):PlayUiState()
    data class LoadRecommendSimpleVideoFail(val msg:String):PlayUiState()

    //获取首页分类下的视频
    data class LoadSimpleVideoByChannelIdSuccess(val list: List<SimpleVideoEntity>):PlayUiState()
    data class LoadSimpleVideoByChannelIdFail(val msg:String):PlayUiState()

    //获取放映厅推荐视频
    data class LoadRecommendMutilVideoSuccess(val list: List<MovieVideoEntity>):PlayUiState()
    data class LoadRecommendMutilVideoFail(val msg:String):PlayUiState()

    //获取放映厅分类下视频
    data class LoadMutilVideoByTypeIdSuccess(val list: List<MovieVideoEntity>):PlayUiState()
    data class LoadMutilVideoByTypeIdFail(val msg:String):PlayUiState()

    //获取视频评论
    data class LoadVideoCommendsSuccess(val list: List<CommendEntity>):PlayUiState()
    data class LoadVideoCommendsFail(val msg:String):PlayUiState()

    //发布评论
    data class PublishCommentSuccess(val list: List<CommendEntity>):PlayUiState()
    data class PublishCommentFail(val msg:String):PlayUiState()

    //发布弹幕
    data class PublishDanmuMsgSuccess(val list: String):PlayUiState()
    data class PublishDanmuMsgFail(val msg:String):PlayUiState()

    //获取弹幕
    data class LoadVideoDanmuMsgSuccess(val list: List<DanmuEntity>):PlayUiState()
    data class LoadVideoDanmuMsgFail(val msg:String):PlayUiState()
}